home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 076-100 / disk_091 / include / adldef.h < prev    next >
Text File  |  1992-05-06  |  2KB  |  83 lines

  1. /* Token types */
  2.  
  3.  
  4. #define MIN_LEGAL    400    /* Lower bound of types that can appear
  5.                    in an ADL expression */
  6. #define ROUTINE        400
  7. #define CONST        401
  8. #define VAR        402
  9. #define ARGUMENT    403
  10. #define LOCAL        404
  11.  
  12. #define MIN_RT        405    /* Lower bound of types that can appear
  13.                    in an ADL sentence */
  14. #define PREP        405
  15. #define VERB        406
  16. #define STRING        407
  17. #define ADJEC        408
  18. #define NOUN        409
  19. #define NOUN_SYN    410
  20.  
  21. #define MAX_LEGAL    410    /* Upper bound of types that can appear
  22.                    in an ADL expression */
  23. #define ARTICLE        411
  24. #define ART        411
  25. #define    CONJ        412
  26. #define COMMA        413
  27. #define    SEP        414
  28.  
  29. #define MAX_RT        413    /* Upper bound of types that can appear
  30.                    in an ADL sentence */
  31. #define MYVAL        414    /* .ME */
  32. #define UNDECLARED    415
  33.  
  34.  
  35. /* Control statements */
  36.  
  37. #define IF        500
  38. #define THEN        501
  39. #define ELSEIF        502
  40. #define ELSE        503
  41. #define WHILE        504
  42. #define DO        505
  43.  
  44.  
  45. /* Declaration statements */
  46.  
  47. #define    MIN_D        600
  48.  
  49. #define ROUT_D        600
  50. #define VERB_D        601
  51. #define ADJEC_D        602
  52. #define ART_D        603
  53. #define PREP_D        604
  54.  
  55. #define MAX_D        604
  56.  
  57. #define VAR_D        605
  58. #define LOCAL_D        606
  59. #define NOUN_D        607
  60. #define INCLUDE        608
  61. #define MESSAGE        609
  62.  
  63.  
  64. /* stack machine opcodes */
  65.  
  66. #define NOP    0x00        /* 00000000            */
  67. #define PUSHME    0x01        /* 00000001            */
  68. #define POP    0x02        /* 00000010            */
  69. #define RET    0x03        /* 00000011            */
  70. #define FILEN    0x04        /* 00000100 ........ ........    */
  71. #define LINEN    0x05        /* 00000101 ........ ........    */
  72. #define PUSH    0x06        /* 00000110 ........ ........    */
  73. #define ILLEGAL    0x07        /* 00000111            */
  74. #define PUSHS    0x08        /* 00001... ........        */
  75. #define JMP    0x10        /* 00010... ........ ........    */
  76. #define JMPZ    0x18        /* 00011... ........ ........    */
  77. #define PUSHARG    0x20        /* 001.....            */
  78. #define CALL    0x40        /* 001.....            */
  79. #define PUSHLOCL 0x60        /* 001.....            */
  80. #define PUSHN    0x80        /* 1.......            */
  81.  
  82. /*** EOF adldef.h ***/
  83.